using System;
using System.Collections.Generic;
using System.Text;


namespace Lizk.SimpleHUD
{
    public interface HUDRenderer : IDisposable
    {
        bool ImageLoaded(HUDImage image);
        void LoadImage(HUDImage image);
        void UnloadImage(HUDImage image);
        void PaintImage(RectangleS bounds, RectangleS source, byte alpha, HUDImage image);

        bool VideoLoaded(HUDVideo2 video);
        void LoadVideo(HUDVideo2 video);
        void UnloadVideo(HUDVideo2 video);
        void PaintVideo(RectangleS bounds, RectangleS source, byte alpha, HUDVideo2 video);

        
        bool HasFont(HUDFont hudFont);
        void LoadFont(HUDFont hudFont);
        void UnloadFont(HUDFont hudFont);
        void PaintText(RectangleS paintArea, RectangleS rectangleS, int a, HUDLabel font, int page);

        void EnterContainer(RectangleS activeArea);
        void LeaveContainer(RectangleS activeArea);


        SizeS GetCanvasSize();

        void Reset();
        void Initialize();
        void BeginDraw();
        void EndDraw();



    }
}
